/*************************************************************************
 * Copyright(C),2017,ZDC Corporation.
 * All right reserved.
 * 
 * File Name: chat.h
 * Description:
 * Author: mdc
 * Mail: 1436208384@qq.com
 * Created Time: 2017年09月15日 星期五 16时39分04秒
 ************************************************************************/

#ifndef _CHAT_H_
#define _CHAT_H_

#include <math.h>
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <unistd.h>
#include <string.h>
#include <ncurses.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <pthread.h>
#include <time.h>

#define CONFIG 2
#define QUIT 3

char md5pwd[33];//存放passwdMD5值
//unsigned char *md5pwd;//存放passwdMD5值

//MD5_CTX md5c;  
char name[64];      //存放用户输入的用户名和密码
char pwd[64];  
char md5lgpwd[33];      //存放用户输入的密码经过md5加密后的值
char md5cfgpwd[33];      //存放用户修改配置的密码经过md5加密后的值
char sentmsg[128];      //存放用户输入的消息
char recvemsg[128];      //存放接收的消息
char namecfgbuf[64];    //接收修改配置文件时用户输入的信息
char pwdcfgbuf[64];
char ipcfgbuf[64];
char portcfgbuf[64];
char connectcfgbuf[64];
char name_cfg[64];  //存放从配置文件中读出的用户名和密码
char pwd_cfg[64];
char ip_cfg[64];
char port_cfg[64];
char connect_cfg[64];

char allsentmsg[128][256];//用于存储所有消息的二维数组
char allrecvmsg[128][256];//用于存储所有消息的二维数组

void *tcpserver(void* arg);
void tcpclient(void);

pthread_mutex_t work_mutex; //声明互斥锁

int r_msg_num;//输入消息的总条目数
#endif
